import React from "react";
import {
  Link,
  Routes,
  Route,
  useNavigate,
  useLocation,
} from "react-router-dom";

const Home = () => {
  const location = useLocation();
  console.log(location);
  return <div>这是首页页面</div>;
};

// useHistory被删除了
// useNavigate用于做跳转
const About = () => {
  // navigate是一个函数
  // 如果里面传入一个路径，那么就相当于push方法
  // 可以传入第二个参数{ replace: true }，相当于replace方法
  // 如果里面传入一个数字，那么相当于go方法
  // 也允许我们传入对象
  const navigate = useNavigate();
  const fn = () => {
    // navigate("/home");
    // navigate("/home", { replace: true });
    // navigate(-1);

    navigate(
      {
        pathname: "/home",
        search: "?a=3",
        hash: "#abc",
      },
      {
        state: { x: 10 },
        replace: true,
      }
    );
  };
  return (
    <div>
      这是关于页面 - <button onClick={fn}>btn</button>
    </div>
  );
};

const App = () => {
  return (
    <>
      <h2>react-router-v6-基础</h2>
      <ul>
        <li>
          <Link to="/home">首页</Link>
        </li>
        <li>
          <Link to="/about">关于页</Link>
        </li>
      </ul>

      <hr />

      <Routes>
        <Route path="/home" element={<Home></Home>}></Route>
        <Route path="/about" element={<About />}></Route>
      </Routes>
    </>
  );
};

export default App;
